package com.sihai.ehr.model.biz;

import javax.persistence.Entity;
import javax.persistence.EnumType;
import javax.persistence.Enumerated;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;

import com.sihai.core.BaseEntity;
import com.sihai.ehr.model.sys.AuditStatus;
import com.sihai.ehr.model.sys.ExaminePeriodEnum;
import com.sihai.ehr.model.sys.Organization;

/**
 * 考核员工得分实体类
 * 
 * @author Henry
 * 
 */
@Entity
public class ExamQualScore extends BaseEntity<Long> {

	/**
	 * 
	 */
	private static final long serialVersionUID = -6729286217661560614L;

	@Id
	@GeneratedValue(strategy = GenerationType.AUTO)
	private Long id;

	/** 考核周期编号 */
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "period_id")
	private ExamPeriod examPeriod;

	/** 员工编号 */
	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "work_id")
	private EmployeeinfoWork employeeinfoWork;
	
	/** 所得分数 */
	private Float score;

	/** 原始分数 */
	private Float rawScore;

	/** 调整分数 */
	private Float adjustScore;

	/** 0：表示已经打分，1：表示审核过*/
	private int status;

	/** 是否删除 */
	private boolean cancel;
	/** 当前审核人用户ID */
	private Long currentAuditingId;
	/** 当前审核人编号*/
	private Long currentAuditerId;
	/** 当前审核人状态 */
	private AuditStatus currentAuditStatus;

	@Override
	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public ExamPeriod getExamPeriod() {
		return examPeriod;
	}

	public void setExamPeriod(ExamPeriod examPeriod) {
		this.examPeriod = examPeriod;
	}

	public EmployeeinfoWork getEmployeeinfoWork() {
		return employeeinfoWork;
	}

	public void setEmployeeinfoWork(EmployeeinfoWork employeeinfoWork) {
		this.employeeinfoWork = employeeinfoWork;
	}

	public Float getScore() {
		return score;
	}
	
	public void setScore(Float score) {
		this.score = score;
	}
	
	public Float getRawScore() {
		return rawScore;
	}

	public void setRawScore(Float rawScore) {
		this.rawScore = rawScore;
	}

	public Float getAdjustScore() {
		return adjustScore;
	}

	public void setAdjustScore(Float adjustScore) {
		this.adjustScore = adjustScore;
	}

	public int getStatus() {
		return status;
	}

	public void setStatus(int status) {
		this.status = status;
	}

	public boolean isCancel() {
		return cancel;
	}

	public void setCancel(boolean cancel) {
		this.cancel = cancel;
	}
	
	public Long getCurrentAuditingId() {
		return currentAuditingId;
	}
	
	public void setCurrentAuditingId(Long currentAuditingId) {
		this.currentAuditingId = currentAuditingId;
	}
	
	public Long getCurrentAuditerId() {
		return currentAuditerId;
	}
	
	public void setCurrentAuditerId(Long currentAuditerId) {
		this.currentAuditerId = currentAuditerId;
	}
	
	public AuditStatus getCurrentAuditStatus() {
		return currentAuditStatus;
	}
	
	public void setCurrentAuditStatus(AuditStatus currentAuditStatus) {
		this.currentAuditStatus = currentAuditStatus;
	}
}
